/**
 * 							Interrupt Common Defination
 * @brief	Interrupt Common Definaton
 * @author	chy.
 * @note
 * @comment
 */
#ifndef _K_INT_INTERRUPT_H_
#define _K_INT_INTERRUPT_H_

/*************************************************************************************
 * 								Interrupt handlers
 * 			the follows functions are always the same with any platform
 *************************************************************************************/

/**
 * @BRIEF	:	IRQ interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main IRQ interrupt handler
 */
void k_int_irq_handler(void);

/**
 * @BRIEF	:	FIQ interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main FIQ interrupt handler
 */
void k_int_fiq_handler(void);

/**
 * @BRIEF	:	PABT interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main PABT interrupt handler
 */
void k_int_pabt_handler(void);

/**
 * @BRIEF	:	DABT interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main DABT interrupt handler
 */
void k_int_dabt_handler(void);

/**
 * @BRIEF	:	UND interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main UND interrupt handler
 */
void k_int_und_handler(void);

/**
 * @BRIEF	:	SWI(SVC) interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main SWI(SVC) interrupt handler
 */
void k_int_svc_handler(void);

/**
 * @BRIEF	:	Reserved interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main Reserved interrupt handler
 */
void k_int_revserve_handler(void);

/**
 * @BRIEF	:	Reset interrupt handler
 * @PARAM	:	void
 * @RETURN	:	void
 * @NOTE	:	this is the main Reset interrupt handler
 */
void k_int_reset_handler(void);

#endif /* _K_INT_INTERRUPT_H_ */
